package com.songlanyun.modules.pointtobalace.service;

import java.text.ParseException;
import java.util.List;
import java.util.Map;

import com.songlanyun.common.drive.IBaseService;
import com.songlanyun.common.utils.PageUtils;
import com.songlanyun.modules.chain.model.dto.UserWithdrawalDTO;
import com.songlanyun.modules.pointtobalace.entity.BalanceToPointRecordCNHD;
import com.songlanyun.modules.pointtobalace.model.vo.BalanceToPointRecordCNHDVO;
import com.songlanyun.modules.pointtobalace.model.vo.BalanceToPointRecordCNHDVO2;
import org.springframework.stereotype.Service;

/**
 * 积分兑换成余额(消费额余额)Service接口
 *
 * @author SH
 * @date 2024-03-05
 */
public interface IBalanceToPointRecordCNHDService {
    /**
     * 查询积分兑换成余额(消费额余额)
     *
     * @param id 积分兑换成余额(消费额余额)主键
     * @return 积分兑换成余额(消费额余额)
     */
    public BalanceToPointRecordCNHD selectBalanceToPointRecordCNHDById(Long id);

    /**
     * 查询积分兑换成余额(消费额余额)列表
     *
     * @param balanceToPointRecordCNHD 积分兑换成余额(消费额余额)
     * @return 积分兑换成余额(消费额余额)集合
     */
    public List<BalanceToPointRecordCNHD> selectBalanceToPointRecordCNHDList(BalanceToPointRecordCNHD balanceToPointRecordCNHD);

    /**
     * 新增积分兑换成余额(消费额余额)
     *
     * @param balanceToPointRecordCNHD 积分兑换成余额(消费额余额)
     * @return 结果
     */
    public int insertBalanceToPointRecordCNHD(BalanceToPointRecordCNHD balanceToPointRecordCNHD);

    /**
     * 修改积分兑换成余额(消费额余额)
     *
     * @param balanceToPointRecordCNHD 积分兑换成余额(消费额余额)
     * @return 结果
     */
    public int updateBalanceToPointRecordCNHD(BalanceToPointRecordCNHD balanceToPointRecordCNHD);

    //提交审合
    public boolean createWithdrawalBalance(UserWithdrawalDTO userWithdrawalDTO);

    PageUtils allExaminePage(Map<String, String> params) throws ParseException;

    /**
     * 根据过滤条件导出数据列表
     * @param params 过滤条件
     * @return 符合过滤条件的数据列表
     */
    List<BalanceToPointRecordCNHDVO> exportList(Map<String, String> params);

    /**
     * 根据过滤条件导出数据列表
     * @param params 过滤条件
     * @return 符合过滤条件的数据列表
     */
    List<BalanceToPointRecordCNHDVO2> exportList2(Map<String, String> params);

    /**
     * 批量删除积分兑换成余额(消费额余额)
     *
     * @param ids 需要删除的积分兑换成余额(消费额余额)主键集合
     * @return 结果
     */
//    public int deleteBalanceToPointRecordCNHDByIds(Long[] ids);

    /**
     * 删除积分兑换成余额(消费额余额)信息
     *
     * @param id 积分兑换成余额(消费额余额)主键
     * @return 结果
     */
//    public int deleteBalanceToPointRecordCNHDById(Long id);
}
